package com.service;

import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.dao.MobanZmDao;
import com.modal.MobanZmModel;
import com.pojo.MobanZm;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class MobanZmService extends ServiceImpl<MobanZmDao, MobanZm> {

    @Autowired
    private MobanZmDao mobanZmDao;

    /**
     * 根据模板名称查找模板数量
     * @param name  模板名称
     * @return
     */
    public Long nameCount(String name){
        return mobanZmDao.selectCount(new QueryWrapper<MobanZm>().eq("name",name));
    }

    /**
     * 根据模板ID和模板名称查询模板数量
     * @param id    模板ID
     * @param name  模板名称
     * @return
     */
    public Long nameIdCount(String id,String name){
        return mobanZmDao.selectCount(new QueryWrapper<MobanZm>().eq("name",name).eq("id",id));
    }

    /**
     * 根据模板ID查询模板
     * @param id    模板ID
     * @return
     */
    public MobanZm selectID(String id){
        return mobanZmDao.selectOne(new QueryWrapper<MobanZm>().eq("id",id));
    }

    public String insertMobanZm(MobanZmModel model){
        MobanZm mobanZm = new MobanZm();
        BeanUtil.copyProperties(model, mobanZm);
        if (mobanZmDao.insert(mobanZm) < 1) {
            return "新增模板正面失败";
        }
        return null;
    }

    public String updateMobanZm(MobanZmModel model){
        MobanZm mobanZm = mobanZmDao.selectById(model.getId());
        if (mobanZm == null) {
            return "模板正面不存在";
        }
        BeanUtil.copyProperties(model, mobanZm);
        if (mobanZmDao.updateById(mobanZm) < 1) {
            return "编辑模板正面不存在";
        }
        return null;
    }
}